Small, but Resilient microservice architecture
Run two microservices, with minimal cost !!
Solution :
ECS : Fargate compute to deploy the containes.
ALB : Two ALBs, to route traffic to each microservices.
Route 53 : Create internal hosted-zones. Webserver calls App-server using internal domain.
Ok, but what makes it resilient?
ALB is a managed service, which is highly available.
Two replicas of ECS Tasks, running in different AZs.
ECS Autoscaling enabled to handle load.
Why ECS , why not EKS ?
1. ECS is simple & fast to implement.
2. Cost-effective, used smallest Fargate compute ( .25 vCPU and .5G Memory).
3. Minimum operational overhead - ECS integrates easily with other AWS services, no EKS complexities.
Why ECR , why not Dockerhub ?
1. ECS works best with pulling images from ECR.
2. No need to open internet access to pull images from Dockerhub.
This setup achieves a balanced blend of simplicity, performance, and resilience—making it perfect for startups, development environments, or production-ready microservices that don’t require the overhead of Kubernetes.
Code